import sys
from pathlib import Path
from flask import Flask, json, make_response, jsonify, redirect, url_for

if __name__ == "__main__":
    sys.path.append(
        Path(__file__).absolute().parent.parent.__str__()
    )

from base_frame import Application

@Application.app.route("/")
def root():
    return redirect(url_for("index"))

@Application.app.route("/index")
def index():
    # 注意，直接传输Python的对象会被转换为json对象，接下来被序列化之后进行传输，但是转换的时候默认用的ascii编码
    # 而由于Python文件是utf-8编码，因此Python的字典被解析的时候就会保留把utf8的字符的utf8编码保留而只传输ascii字符
    # 为了避免这种情况，使用flask的json来先把字典等对象转换成utf8编码的字符串，而后显示的指定字符串编码为utf-8（指定ensure_ascii为false）
    # 最后指定构建出的request对象是json数据即可
    data = {"name":u"张三"}
    # res = make_response(json.dumps(data, ensure_ascii=False))
    # res.mimetype = "application/json"
    # return res

    # 也可以直接使用jsonify函数，同时app的属性
    Application.app.config["JSON_AS_ASCII"] = False
    return jsonify(data, )



if __name__ == "__main__":
    app = Application()
    app.start_app()